{*******************************************************************************
* The contents of this file are used with permission, subject to the Mozilla   *
* Public License Version 1.1 (the "License"); you may not use this file except *
* in compliance with the License. You may obtain a copy of the License at      *
* http://www.mozilla.org/MPL/                                                  *
*                                                                              *
* Software distributed under the License is distributed on an "AS IS" basis,   *
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for *
* the specific language governing rights and limitations under the License.    *
*                                                                              *
* The Original Code is distributed as part of the "mediate" product and is     *
* Copyright (C) @home media limited. All Rights Reserved.                      *
*                                                                              *
* Email: support@athomemedia.co.uk                                             *
* Web:   http://www.athomemedia.co.uk                                          *
*******************************************************************************}

unit ErrorCodes;

interface

const
  // XML Parsing errors

  // License
  XML_PRS_LIC_MISSING_LICENSE_START_TAG    = 'Missing License start tag';
  XML_PRS_LIC_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within License';

  // Version information
  XML_PRS_VER_MISSING_VER_START_TAG        = 'Missing VersionInfo start tag';
  XML_PRS_VER_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within VersionInformation';

  // Preferences
  XML_PRS_PRF_MISSING_PREFS_START_TAG      = 'Missing ClientPreferences start tag';
  XML_PRS_PRF_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within ClientPreferences';

{$IFDEF DESIGNER}
  // Designer preferences
  XML_PRS_DPRF_MISSING_PREFS_START_TAG     = 'Missing DesignerPreferences start tag';
  XML_PRS_DPRF_FOUND_UNKNOWN_CONTENT_TAG   = 'Unknown content type within DesignerPreferences';
{$ENDIF}

  // ApplicationState
  XML_PRS_STATE_MISSING_START_TAG          = 'Missing ClientState start tag';
  XML_PRS_STATE_FOUND_UNKNOWN_CONTENT_TAG  = 'Unknown content type within ClientState';

  // Equaliser
  XML_PRS_EQU_MISSING_START_TAG            = 'Missing EqualiserSettings start tag';
  XML_PRS_EQU_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within EqualiserSettings';

  // RadioStations
  XML_PRS_RADIO_MISSING_START_TAG          = 'Missing RadioStations start tag';
  XML_PRS_RADIO_FOUND_UNKNOWN_CONTENT_TAG  = 'Unknown content type within RadioStations';

  // KeyBindings
  XML_PRS_KEY_MISSING_BINDS_START_TAG      = 'Missing KeyBindings start tag';
  XML_PRS_KEY_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within KeyBindings';
  XML_PRS_KEY_MISSING_NATIVE_PROFILE       = 'Missing Native KeyProfile definition KeyProfile tag';
  XML_PRS_KEY_UNDEFINED_PROFILE            = 'Unsupported KeyProfile definition found: ';

  // Media Locations
  XML_PRS_MLC_MISSING_MEDIA_MGR_START_TAG  = 'Missing MediaManager start tag';
  XML_PRS_MLC_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within Media locations';

  // Function Descriptions
  XML_PRS_FNC_MISSING_DESCRIPTOR_START_TAG = 'Missing FunctionDescriptions start tag';
  XML_PRS_FNC_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within Function descriptions';

  // Plugin Descriptor
  XML_PRS_PLG_MISSING_DESCRIPTOR_START_TAG = 'Missing PluginDescriptor start tag';
  XML_PRS_PLG_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within PluginDescriptor';

  // Theme related
  // Generic Descriptor errors:
  THM_PRS_DSC_MESSAGE_PREFIX               = 'Encountered error whilst parsing %0:s XML: ';
  THM_PRS_DSC_MISSING_DESCRIPTOR_START_TAG = 'Missing or Invalid start tag';

  // ThemeDescriptor:
  THM_PRS_THM_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within Theme descriptor';

  // VisualDescriptor:
  THM_PRS_VIS_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within VisualDescriptor';
  THM_PRS_VIS_MALFORMED_FILL_TAGS          = 'Malformed Colour tags within Fill definition';
  THM_PRS_VIS_MALFORMED_GRADED_FILL_TAGS   = 'Malformed Colour tags within Graded Fill definition';
  THM_PRS_VIS_MALFORMED_FONT_TYPEFACE_TAGS = 'Malformed Typeface tags within Font definition';
  THM_PRS_VIS_MALFORMED_FONT_SIZE_TAGS     = 'Malformed Size tags within Font definition';
  THM_PRS_VIS_MALFORMED_FONT_COLOUR_TAGS   = 'Malformed Colour tags within Font definition';
  THM_PRS_VIS_MALFORMED_FONT_OUTLINE_TAGS  = 'Malformed Outline tags within Font definition';
  THM_PRS_VIS_MALFORMED_FONT_SHADOW_TAGS   = 'Malformed Shadow tags within Font definition';
  THM_PRS_VIS_MALFORMED_FONT_OFFSET_TAGS   = 'Malformed Shadow offset tags within Font definition';
  THM_PRS_VIS_MALFORMED_BITMAP_FNAME_TAGS  = 'Malformed Filename tags within Bitmap definition';
  THM_PRS_VIS_MALFORMED_BITMAP_SIZE_TAGS   = 'Malformed Size tags within Bitmap definition';
  THM_PRS_VIS_MALFORMED_BRUSH_TAGS         = 'Malformed Brush tags within Shape definition';
  THM_PRS_VIS_MALFORMED_SIZE_TAGS          = 'Malformed Size tags within Shape definition';
  THM_PRS_VIS_MALFORMED_CA_SIZE_TAGS       = 'Malformed Size tags within Caption definition';
  THM_PRS_VIS_MALFORMED_MW_SIZE_TAGS       = 'Malformed Size tags within Media window definition';
  THM_PRS_VIS_MALFORMED_GD_POSITION_TAGS   = 'Malformed Position tags within Grid definition';
  THM_PRS_VIS_UNSUPPORTED_GRID_STATE_TYPE  = 'Unsupported State type within Grid definition';
  THM_PRS_VIS_MALFORMED_GRID_POS_TAGS      = 'Malformed Position tags within Grid definition';
  THM_PRS_VIS_UNSUPPORTED_GRID_IMAGE_PROP  = 'Unsupported Image property within Grid definition';
  THM_PRS_VIS_MALFORMED_GRID_SIZE_TAGS     = 'Malformed Size tags within Grid definition';
  THM_PRS_VIS_MALFORMED_GRID_IMAGE_TAGS    = 'Malformed Default Image tags within Grid definition';
  THM_PRS_VIS_MALFORMED_MGD_POSITION_TAGS  = 'Malformed Position tags within Media Grid definition';
  THM_PRS_VIS_UNSUPPORTED_MGRID_STATE_TYPE = 'Unsupported State type within Media Grid definition';
  THM_PRS_VIS_MALFORMED_MGRID_POS_TAGS     = 'Malformed Position tags within Media Grid definition';
  THM_PRS_VIS_UNSUPPORTED_MGRID_IMAGE_PROP = 'Unsupported Image property within Media Grid definition';
  THM_PRS_VIS_MALFORMED_MGRID_SIZE_TAGS    = 'Malformed Size tags within Media Grid definition';
  THM_PRS_VIS_MALFORMED_BAR_VMARGIN_TAGS   = 'Malformed VerticalMargins tag within Bar definition';
  THM_PRS_VIS_MALFORMED_BAR_HMARGIN_TAGS   = 'Malformed HorizontalMargins tag within Bar definition';
  THM_PRS_VIS_UNSUPPORTED_BAR_FGRND_PROP   = 'Unsupported Foreground property within Bar definition';
  THM_PRS_VIS_MALFORMED_BAR_SIZE_TAGS      = 'Malformed Size tags within Bar definition';
  THM_PRS_VIS_MALFORMED_BAR_IMAGE_TAGS     = 'Malformed Image tags within Bar definition';
  THM_PRS_VIS_MALFORMED_BT_POSITION_TAGS   = 'Malformed Position tags within Button definition';
  THM_PRS_VIS_UNSUPPORTED_BT_STATE_TYPE    = 'Unsupported State type within Button definition';
  THM_PRS_VIS_UNSUPPORTED_BT_ICON_TYPE     = 'Unsupported Icon type within Button definition';
  THM_PRS_VIS_MALFORMED_BT_ICON_SIZE_TAGS  = 'Malformed Icon Size tags within Button definition';
  THM_PRS_VIS_MALFORMED_BT_ICON_POS_TAGS   = 'Malformed Icon Position tags within Button definition';
  THM_PRS_VIS_UNSUPPORTED_BT_ICON_PROP     = 'Unsupported Icon property within Button definition';
  THM_PRS_VIS_MALFORMED_TE_POSITION_TAGS   = 'Malformed Position tags within TextEdit definition';
  THM_PRS_VIS_UNSUPPORTED_TE_STATE_TYPE    = 'Unsupported State type within TextEdit definition';
  THM_PRS_VIS_MALFORMED_GAUGE_CENTER_TAGS  = 'Malformed Pointer Center tag within Gauge definition';
  THM_PRS_VIS_MALFORMED_GAUGE_ROTATE_TAGS  = 'Malformed Pointer Rotate tag within Gauge definition';
  THM_PRS_VIS_UNSUPPORTED_GAUGE_PTR_PROP   = 'Unsupported Pointer property within Gauge definition';
  THM_PRS_VIS_MALFORMED_GAUGE_SIZE_TAGS    = 'Malformed Size tag within Gauge definition';
  THM_PRS_VIS_MALFORMED_DIAL_CENTER_TAGS   = 'Malformed Knob Center tag within Dial definition';
  THM_PRS_VIS_MALFORMED_DIAL_ROTATE_TAGS   = 'Malformed Knob Rotate tag within Dial definition';
  THM_PRS_VIS_UNSUPPORTED_DIAL_KNOB_PROP   = 'Unsupported Knob property within Dial definition';
  THM_PRS_VIS_MALFORMED_DIAL_SIZE_TAGS     = 'Malformed Size tag within Gauge Dial definition';
  THM_PRS_VIS_UNSUPPORTED_DIAL_STATE_TYPE  = 'Unsupported State type within Dial definition';
  THM_PRS_VIS_UNSUPPORTED_DIAL_BKG_PROP    = 'Unsupported Background property within Dial definition';

  // InterfaceDescriptor:
  THM_PRS_INT_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within InterfaceDescriptor';
  THM_PRS_INT_MISSING_FUNCTIONS_END_TAG    = 'Missing Functions list end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_MACRO_END_TAG        = 'Missing Macro end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_MACROS_END_TAG       = 'Missing Macros list end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_ACTIONS_END_TAG      = 'Missing Actions list end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_META_INFO_END_TAG    = 'Missing MetaInformation list end tag within InterfaceDescriptor';
  THM_PRS_INT_MALFORMED_PL_POSITION_TAGS   = 'Malformed Position tags within Place definition';
  THM_PRS_INT_MISSING_PL_POSITION_END_TAG  = 'Missing Position end tag within Place definition';
  THM_PRS_INT_MALFORMED_PL_ROTATION_TAGS   = 'Malformed Rotation tags within Place definition';
  THM_PRS_INT_MALFORMED_PL_ALIGNMENT_TAGS  = 'Malformed Align tags within Place definition';
  THM_PRS_INT_MISSING_PLACE_END_TAG        = 'Missing Place end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_PLACES_END_TAG       = 'Missing Places list end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_ANIMATOR_END_TAG     = 'Missing Animator end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_ANIMATORS_END_TAG    = 'Missing Animators list end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_ANIMATION_END_TAG    = 'Missing Animation end tag within Animator definition';
  THM_PRS_INT_MISSING_LAYOUT_END_TAG       = 'Missing Layout end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_LAYOUTS_END_TAG      = 'Missing Layouts list end tag within InterfaceDescriptor';
  THM_PRS_INT_MALFORMED_LY_POSITION_TAGS   = 'Malformed Position tags within Layout definition';
  THM_PRS_INT_MISSING_LY_POSITION_END_TAG  = 'Missing Position end tag within Layout definition';
  THM_PRS_INT_MISSING_CUSTOM_END_TAG       = 'Missing Custom position list end tag within Layout definition';
  THM_PRS_INT_MISSING_GRID_END_TAG         = 'Missing Grid position list end tag within Layout definition';
  THM_PRS_INT_MISSING_LY_ACTIONS_END_TAG   = 'Missing Actions list end tag within Layout definition';
  THM_PRS_INT_MISSING_CONTROL_END_TAG      = 'Missing Control end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_CONTROLS_END_TAG     = 'Missing Controls list end tag within InterfaceDescriptor';
  THM_PRS_INT_MALFORMED_CONTROL_SIZE_TAGS  = 'Malformed Size tags within Control definition';
  THM_PRS_INT_UNKNOWN_CONTROL_STYLE        = 'Unknown Style reference within Control definition: ';
  THM_PRS_INT_UNSUPPORTED_CONTROL_TYPE     = 'Unsupported Control type within Controls list: ';
  THM_PRS_INT_UNSUPPORTED_CONTROL_TAG      = 'Unsupported Control element tag within Control definition: ';
  THM_PRS_INT_MISSING_CO_ACTIONS_END_TAG   = 'Missing Actions list end tag within Control definition';
  THM_PRS_INT_MALFORMED_CT_SIZE_TAGS       = 'Malformed Size tags within Container definition';
  THM_PRS_INT_MISSING_CT_SIZE_END_TAG      = 'Missing Size end tag within Container definition';
  THM_PRS_INT_MISSING_CT_CONTENTS_END_TAG  = 'Missing Contents list end tag within Container definition';
  THM_PRS_INT_MISSING_CONTAINER_END_TAG    = 'Missing Container end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_CONTAINERS_END_TAG   = 'Missing Containers list end tag within InterfaceDescriptor';
  THM_PRS_INT_INVALID_CONTAINER_CONTROL    = 'Unknown Control listed within Container definition: ';
  THM_PRS_INT_MISSING_SC_ACTIONS_END_TAG   = 'Missing Actions list end tag within Screen definition';
  THM_PRS_INT_INVALID_SCREEN_CONTENT       = 'Unknown Content listed within Screen definition: ';
  THM_PRS_INT_MISSING_SC_CONTENTS_END_TAG  = 'Missing Contents list end tag within Screen definition';
  THM_PRS_INT_MISSING_META_SCRN_END_TAG    = 'Missing MetaInformation list end tag within Screen definition';
  THM_PRS_INT_MISSING_SCREEN_END_TAG       = 'Missing Screen end tag within InterfaceDescriptor';
  THM_PRS_INT_MISSING_SCREENS_END_TAG      = 'Missing Screens list end tag within InterfaceDescriptor';

  // LanguageDescriptor:
  THM_PRS_LNG_MISSING_NATIVE_LANG_TAG      = 'Missing Native Language definition Language tag';
  THM_PRS_LNG_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within LanguageDescriptor';

  // AudioDescriptor:
  THM_PRS_AUD_FOUND_UNKNOWN_CONTENT_TAG    = 'Unknown content type within AudioDescriptor';

  // Runtime errors displayed within theme GUI - these use text translations
  ERR_VID_INSTALLATION_TEXT                = '^[error.video.installation.text]';
  ERR_VID_INSTALLATION_DESC                = '^[error.video.installation.description]';
  ERR_VID_UNSUPPORTED_TEXT                 = '^[error.video.unsupported.text]';
  ERR_VID_UNSUPPORTED_DESC                 = '^[error.video.unsupported.description]';
  ERR_VID_UNSUPPORTEDHW_TEXT               = '^[error.video.hardware.text]';
  ERR_VID_UNSUPPORTEDHW_DESC               = '^[error.video.hardware.description]';
  ERR_VID_EXTERNAL_TEXT                    = '^[error.video.crashed.text]';
  ERR_VID_EXTERNAL_DESC                    = '^[error.video.crashed.description]';
  ERR_VID_STREAMENDED_TEXT                 = '^[error.video.streamended.text]';
  ERR_VID_STREAMENDED_DESC                 = '^[error.video.streamended.description]';

implementation

end.

